/**************************************************************
*  Apple LLVM version 10.0.0 (clang-1000.10.43.1)             *
*  Copyright (C) 2021 Xuan-Yu-San 307100890@qq.com.           *
*                                                             *
*  This file is part of little-nginx.                         *
*  Little-NGINX is a castration version NGINX for learning    *
*  HTTP Message.                                              *
*                                                             *
*  @file     Server.h                                         *
*  @github   https://gitee.com/xuanyusan/little_nginx.git     *
*  @license  MIT License (MIT)                                *
**************************************************************/

#ifndef MESSAGE_HPP
#define MESSAGE_HPP

#include <string>
#include <iostream>
#include <sstream>
#include <map>

using namespace std;

class Message {
protected:
    string message_str;
    string protocol;
    map<string, string> header_params;
    string body_content;
public:
    friend ostream& operator<<(ostream&, Message&);
    Message(string message_str);
    ~Message();
};

Message::Message(string request_body):message_str(request_body){}

Message::~Message(){}

ostream& operator<<(ostream& out, Message& A){
    out << A.message_str;
    return out;
}

#endif